package pkg

import (
	"fmt"

	"github.com/smartwalle/alipay/v3"

	"videosS_rpc/basic/config"
)

func Pay(orderSn string, price string) (string, error) {
	privateKey := config.AppConfig.Ailpay.PrivateKey // 必须，上一步中使用 RSA签名验签工具 生成的私钥
	client, err := alipay.New(config.AppConfig.Ailpay.AppId, privateKey, false)
	if err != nil {
		fmt.Println(err)
		return "", nil
	}

	var p = alipay.TradeWapPay{}
	p.NotifyURL = "http://xxx"
	p.ReturnURL = "http://xxx"
	p.Subject = "会员充值"
	p.OutTradeNo = orderSn
	p.TotalAmount = price
	p.ProductCode = "QUICK_WAP_WAY"

	url, errs := client.TradeWapPay(p)
	if errs != nil {
		fmt.Println(err)
	}

	// 这个 payURL 即是用于打开支付宝支付页面的 URL，可将输出的内容复制，到浏览器中访问该 URL 即可打开支付页面。
	var payURL = url.String()
	fmt.Println(payURL)
	return payURL, err
}
